Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Flannel using CNI #1486

Merged
merged 1 commit into from
Aug 25, 2017
Merged

Flannel using CNI #1486

merged 1 commit into from
Aug 25, 2017

Conversation

chadswen
Copy link
Member

  • Updates Controller Manager/Kubelet with Flannel's required configuration for CNI
  • Removes old Flannel installation
  • Install CNI enabled Flannel DaemonSet/ConfigMap/CNI bins and config on host

@k8s-ci-robot
Copy link
Contributor

Thanks for your pull request. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

📝 Please follow instructions at https://github.com/kubernetes/kubernetes/wiki/CLA-FAQ to sign the CLA.

It may take a couple minutes for the CLA signature to be fully registered; after that, please reply here with a new comment and we'll verify. Thanks.


  • If you've already signed a CLA, it's possible we don't have your GitHub username or you're using a different email address. Check your existing CLA data and verify that your email is set on your git commits.
  • If you signed the CLA as a corporation, please sign in with your organization's credentials at https://identity.linuxfoundation.org/projects/cncf to be authorized.
  • If you have done the above and are still having issues with the CLA being reported as unsigned, please email the CNCF helpdesk: [email protected]

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@k8s-ci-robot k8s-ci-robot added the cncf-cla: no Indicates the PR's author has not signed the CNCF CLA. label Jul 31, 2017
@k8s-ci-robot k8s-ci-robot added cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. and removed cncf-cla: no Indicates the PR's author has not signed the CNCF CLA. labels Jul 31, 2017
@bradbeam
Copy link
Contributor

ci check this

Copy link
Contributor

@matlockx matlockx left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lgtm

@chadswen
Copy link
Member Author

Added RBAC support and updated a doc that referenced Docker configuration which is no longer needed.

@chadswen
Copy link
Member Author

Rebased again.

run_once: true
when: rbac_enabled and flannel_rbac_manifest.changed

#FIXME: remove when kubespray uses kubernetes 1.7 due to kubernetes/features#124
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why do we need to purge? we have no previous install that installed flannel as a daemonset. Lines 6-15 should be removed. We can just add proper field, by setting spec.updateStrategy.type to RollingUpdate

{% if rbac_enabled %}
serviceAccountName: flannel
{% endif %}
containers:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Insert this block:

      updateStrategy:
        type: RollingUpdate

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

updateStrategy: type: RollingUpdate should already be in there. Bottom of the file.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure if it's in the right spot, but it's easy enough to test later

Copy link
Contributor

@mattymo mattymo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Small fix for upgrades, but thanks a lot for this patch

* Updates Controller Manager/Kubelet with Flannel's required configuration for CNI
* Removes old Flannel installation
* Install CNI enabled Flannel DaemonSet/ConfigMap/CNI bins and config (with portmap plugin) on host
* Uses RBAC if enabled
* Fixed an issue that could occur if br_netfilter is not a module and net.bridge.bridge-nf-call-iptables sysctl was not set
@chadswen
Copy link
Member Author

chadswen commented Aug 25, 2017

  • Updated to v.0.2.0 flannel-cni released yesterday which includes CNI v.0.6.0 binaries
  • Added portmap plugin support
  • Fixed an issue that could occur if br_netfilter is not a module and net.bridge.bridge-nf-call-iptables sysctl was not set. As a result kube-proxy shouldn't require masquerade-all for flannel.
  • Addressed linter warnings

@k8s-ci-robot k8s-ci-robot added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Aug 25, 2017
@chadswen
Copy link
Member Author

Just a note, the br_netfilter and net.bridge.bridge-nf-call-iptables checks are also applicable for weave. Ideally weave and flannel could share code. In another PR, we might want to combine the approach and configure the module/sysctl before kube-proxy is started, otherwise kube-proxy will still warn on startup that neither is set.

@mattymo mattymo merged commit a39e78d into kubernetes-sigs:master Aug 25, 2017
@chadswen chadswen deleted the flannel-cni branch August 25, 2017 19:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants